package org.example.curriculum_design_6_16.service;

import org.example.curriculum_design_6_16.entity.vo.Result;
import org.example.curriculum_design_6_16.entity.vo.UserVo;
import org.springframework.mail.SimpleMailMessage;

import javax.servlet.http.HttpSession;

public interface MailService {
    /**
     * 生成并发送一封邮件
     *
     * @param recv    收件人邮箱地址
     * @param subject 邮件的标题
     * @param content 邮件的内容
     * @return 返回发送的邮件消息对象
     */
    SimpleMailMessage GenerateEmail(String recv, String subject, String content);

    /**
     * 发送注册验证码邮件
     *
     * @param recvMail 收件人邮箱地址
     * @return 返回包含操作结果的 Result 对象
     */
    Result SignupCodeMail(String recvMail);

    /**
     * 发送找回密码验证码邮件
     *
     * @param recvMail 收件人邮箱地址
     * @return 返回包含操作结果的 Result 对象
     */
    Result RetrieveCodeMail(String recvMail);

    /**
     * 同步发送邮件
     *
     * @param recipient 收件人邮箱地址
     * @param subject   邮件的标题
     * @param content   邮件的内容
     */
    void SendMailSync(String recipient, String subject, String content);
}
